﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using System.Collections.ObjectModel;
using BBRILCSharp.ViewModels;
using Net.JGLI.RilSharp;

namespace BBRILCSharp.Models
{
    public class RILDataModel : ViewModelBase
    {
        public RILDataModel()
        {

        }

        private ObservableCollection<RilListItem> _readingList = new ObservableCollection<RilListItem>();

        public ObservableCollection<RilListItem> ReadingList
        {
            get { return _readingList; }
            set
            {
                _readingList = value;
                OnPropertyChanged("ReadingList");
            }
        }

        private ObservableCollection<RilListItem> _allList = new ObservableCollection<RilListItem>();

        public ObservableCollection<RilListItem> AllList
        {
            get { return _allList; }
            set
            { 
                _allList = value;
                OnPropertyChanged("AllList");
            }
        }

        private ObservableCollection<RilListItem> _readArchiveList = new ObservableCollection<RilListItem>();

        public ObservableCollection<RilListItem> ReadArchiveList
        {
            get { return _readArchiveList; }
            set
            {
                _readArchiveList = value;
                OnPropertyChanged("ReadArchiveList");
            }
        }

        private Net.JGLI.RilSharp.ReadState _state = new Net.JGLI.RilSharp.ReadState();

        public Net.JGLI.RilSharp.ReadState State
        {
            get { return _state; }
            set
            { 
                _state = value;
                OnPropertyChanged("State");
            }
        }

        private bool _isIncludeImages = false;

        public bool IsIncludeImages
        {
            get { return _isIncludeImages; }
            set
            { 
                _isIncludeImages = value;
                OnPropertyChanged("IsIncludeImages");
            }
        }

        private string _newPageUrl = "";

        public string NewPageUrl
        {
            get { return _newPageUrl; }
            set
            { 
                _newPageUrl = value;
                OnPropertyChanged("NewPageUrl");
            }
        }

        private string _newPageTitle = "";

        public string NewPageTitle
        {
            get { return _newPageTitle; }
            set
            {
                _newPageTitle = value;
                OnPropertyChanged("_newPageTitle");
            }
        }

        private RilClient _rcl;

        public RilClient RCL
        {
            get { return _rcl; }
            set
            {
                _rcl = value;
                OnPropertyChanged("RCL");
            }
        }

    }
}
